home *** CD-ROM | disk | FTP | other *** search
/ MacHack 1997 / MacHack 1997.toast / Other Stuff / Other Stuff ’97 / PowerOS Development / basic kernel source / stdhdr.s < prev   
Text File  |  1997-06-26  |  3KB  |  137 lines

  1. /*
  2.         stdhdr.s
  3.         a header file for PowerOS
  4.         copyright 1996-1997 by Ben Martz
  5.         all rights reserved world wide
  6.  
  7.         ANY AND ALL MODIFICATIONS TO THIS SOURCE MUST CREDIT THE ORIGINAL
  8.         AUTHOR, BEN MARTZ (benmartz@ic.net), AND MUST BE GIVEN TO THE AUTHOR
  9.         FOR INTEGRATION INTO THE MAIN PowerOS SOURCE TREE. THANK YOU FOR YOUR
  10.         COOPERATION!
  11. */
  12.  
  13. #ifndef __MWERKS__
  14.     #define    r0    0
  15.     #define    r1    1
  16.     #define    r2    2
  17.     #define    r3    3
  18.     #define    r4    4
  19.     #define    r5    5
  20.     #define    r6    6
  21.     #define    r7    7
  22.     #define    r8    8
  23.     #define    r9    9
  24.     #define    r10    10
  25.     #define    r11    11
  26.     #define    r12    12
  27.     #define    r13    13
  28.     #define    r14    14
  29.     #define    r15    15
  30.     #define    r16    16
  31.     #define    r17    17
  32.     #define    r18    18
  33.     #define    r19    19
  34.     #define    r20    20
  35.     #define    r21    21
  36.     #define    r22    22
  37.     #define    r23    23
  38.     #define    r24    24
  39.     #define    r25    25
  40.     #define    r26    26
  41.     #define    r27    27
  42.     #define    r28    28
  43.     #define    r29    29
  44.     #define    r30    30
  45.     #define    r31    31
  46.     
  47.     #define    SP    r1
  48.     #define    RTOC    r2
  49.  
  50.     #define    f0    0
  51.     #define    f1    1
  52.     #define    f2    2
  53.     #define    f3    3
  54.     #define    f4    4
  55.     #define    f5    5
  56.     #define    f6    6
  57.     #define    f7    7
  58.     #define    f8    8
  59.     #define    f9    9
  60.     #define    f10    10
  61.     #define    f11    11
  62.     #define    f12    12
  63.     #define    f13    13
  64.     #define    f14    14
  65.     #define    f15    15
  66.     #define    f16    16
  67.     #define    f17    17
  68.     #define    f18    18
  69.     #define    f19    19
  70.     #define    f20    20
  71.     #define    f21    21
  72.     #define    f22    22
  73.     #define    f23    23
  74.     #define    f24    24
  75.     #define    f25    25
  76.     #define    f26    26
  77.     #define    f27    27
  78.     #define    f28    28
  79.     #define    f29    29
  80.     #define    f30    30
  81.     #define    f31    31
  82.  
  83.     /* SPRs */
  84.     #define    XER    1
  85.     #define    LR    8
  86.     #define    CTR    9
  87.     #define    DEC    22
  88.     #define    SRR0    26
  89.     #define    SRR1    27
  90.     #define    SPRG0    272
  91.     #define    SPRG1    273
  92.     #define    SPRG2    274
  93.     #define    SPRG3    275
  94.     #define    DBAT0U    536
  95.     #define    DBAT0L    537
  96.     #define    DBAT1U    538
  97.     #define    DBAT1L    539
  98.     #define    DBAT2U    540
  99.     #define    DBAT2L    541
  100.     #define    DBAT3U    542
  101.     #define    DBAT3L    543
  102.     
  103.     /* read-only SPRs on 601 */
  104.     #define    RTBU    4
  105.     #define    RTBL    5
  106.     #define    PVR    287
  107.     
  108.     /* write-only SPRs on 601 */
  109.     #define    WTBU    285
  110.     #define    WTBL    286
  111.  
  112.     /* chip types */
  113.     #define    k601    1
  114.     #define    k603    3
  115.     #define    k604    4
  116.     
  117. #endif
  118.     
  119.     /* msr encodings */
  120.     #define    MSR_EE    (1 << 15)
  121.     #define    MSR_PR    (1 << 14)
  122.     #define    MSR_FP    (1 << 13)
  123.     #define    MSR_ME    (1 << 12)
  124.     #define    MSR_FE0    (1 << 11)
  125.     #define    MSR_SE    (1 << 10)
  126.     #define    MSR_FE1    (1 << 8)
  127.     #define    MSR_IP    (1 << 6)
  128.     #define    MSR_IR    (1 << 5)
  129.     #define    MSR_DR    (1 << 4)
  130.     #define    MSR_RI    (1 << 1)
  131.     #define    MSR_LE    (1 << 0)
  132.  
  133.     #define    MSR_KERNEL        MSR_ME | MSR_IR | MSR_DR | MSR_RI
  134.     #define    MSR_KERNEL_NOTRANS    MSR_ME | MSR_RI
  135.     #define    MSR_KERNEL_EE        MSR_KERNEL | MSR_EE
  136.     #define    MSR_USER        MSR_KERNEL_EE | MSR_PR
  137.